const fs = require("fs");
const path = require("path");
const XLSX = require("xlsx");
// 获取 D 盘的文件列表
const dDrivePath = "C:/Users/33539/Desktop"; // D 盘路径
const getExcelFilesFromD = (): string[] => {
  const files = fs.readdirSync(dDrivePath);
  return files
    .filter((file: any) => file.endsWith(".xlsx") || file.endsWith(".xls"))
    .map((file: any) => path.join(dDrivePath, file));
};

const excelFiles = getExcelFilesFromD();

if (excelFiles.length === 0) {
  console.log("在 D 盘未找到 Excel 文件。");
} else {
  console.log("找到的 Excel 文件：");
  excelFiles.forEach((file, index) => {
    console.log(`${index + 1}: ${file}`);
  });

  // 选择第一个 Excel 文件进行处理
  const filePath = excelFiles[0]; // 可以根据需要选择其他文件

  try {
    const workbook = XLSX.readFile(filePath);

    // 获取第一个工作表
    const firstSheetName = workbook.SheetNames[0];
    const worksheet = workbook.Sheets[firstSheetName];

    // 将工作表转换为 JSON
    const rawData: any[][] = XLSX.utils.sheet_to_json(worksheet, { header: 1 });
    const jsonData = rawData.map((row, index) => {
      return { label: row[0], value: index + 1 };
    });

    // 将 JSON 数据写入文件
    const jsonString = JSON.stringify(jsonData, null, 2);
    const outputFilePath = "output.json"; // 输出文件名

    fs.writeFileSync(outputFilePath, jsonString);
    console.log(`成功将 JSON 数据写入 ${outputFilePath}`);
  } catch (error) {
    console.error("处理 Excel 文件时出错:", error);
  }
}
